CloudWatchアラーム「StatusCheckFailed_Instance」に設定できるアクション
こんにちは、坂巻です。
CloudWatchアラームアクションを使用して、
EC2インスタンスを自動的に停止、終了、再起動、または復旧するアラームを作成できます。
覚えておきたい事としては、
StatusCheckFailed_Instance
と、StatusCheckFailed_System
では設定できるアクションが異なる事です。
改めて確認しましたので、備忘としてまとめたいと思います。
今回はStatusCheckFailed_Instance
のみ動作確認を行います。
StatusCheckFailed_Instance
って?という方は、以下の記事を確認してください。
- 【小ネタ】CloudWatchの「StatusCheckFailed_Instance」と「StatusCheckFailed_System」について
- EC2インスタンスの自動リカバリー設定を改めて説明する(CloudWatch Alarm)
目次
- StatusCheckFailed_Instanceの再起動アクション
- StatusCheckFailed_Instanceの復元アクション
- StatusCheckFailed_Instanceの停止アクション
- StatusCheckFailed_Instanceの終了アクション
StatusCheckFailed_Instanceの再起動アクション
ステータスチェック(インスタンス)に失敗したら、自動で再起動を行う設定です。
以下のようなアラームを設定しました。
該当のEC2は正常に稼働しているため、アラームの状態は「OK」となっています。
それではStatusCheckFailed_Instance
にエラーを発生させたいと思います。
このチェックはEC2インスタンスのネットワークがダウンしても検知されるので、
該当のEC2のネットワークインターフェイスを無効にして動作を確認してみます。
$ date 2018年 7月 31日 火曜日 16:20:31 JST $ curl http://169.254.169.254/latest/meta-data/instance-id ; echo i-02fb5968df361f554 $ sudo ifdown eth0
しばらくすると、状態が「アラーム」となりました。
またしばらくすると、 自動でEC2の再起動が行われ「アラーム」が解消されました。
該当のEC2にログインして、再起動されたことを確認しました。
$ last reboot reboot system boot 4.14.47-64.38.am Tue Jul 31 16:24 - 16:38 (00:14)
StatusCheckFailed_Instance
の再起動アクションは正常に行えました。
StatusCheckFailed_Instanceの復元アクション
ステータスチェック(インスタンス)に失敗したら、自動で復元を行う設定です。
以下のようなアラームを設定しました。
こちらの設定を保存してみたところ、以下のエラーが出力されました。
StatusCheckFailed_Instance
の復元アクションは設定できないことがわかりました。
StatusCheckFailed_Instanceの停止アクション
ステータスチェック(インスタンス)に失敗したら、自動で停止を行う設定です。
以下のようなアラームを設定しました。
先程同様、StatusCheckFailed_Instance
にエラーを発生させたいと思います。
$ date 2018年 7月 31日 火曜日 16:34:17 JST $ curl http://169.254.169.254/latest/meta-data/instance-id ; echo i-02fb5968df361f554 $ sudo ifdown eth0
しばらくすると、状態が「アラーム」となりました。
該当のEC2が停止されました。
StatusCheckFailed_Instance
の停止アクションは正常に行えました。
StatusCheckFailed_Instanceの終了アクション
ステータスチェック(インスタンス)に失敗したら、自動で終了を行う設定です。
先程のアクションにより、EC2が停止されているので、該当のEC2を起動しました。
以下のようなアラームを設定しました。
先程同様、StatusCheckFailed_Instance
にエラーを発生させたいと思います。
$ date 2018年 7月 31日 火曜日 18:55:23 JST $ curl http://169.254.169.254/latest/meta-data/instance-id ; echo i-02fb5968df361f554 $ sudo ifdown eth0
しばらくすると、状態が「アラーム」となりました。
該当のEC2が終了されました。
StatusCheckFailed_Instance
の終了アクションは正常に行えました。
最後に
公式ドキュメントに記載の通り、
StatusCheckFailed_Instance
では復旧アクションが行えませんでした。
復旧アクションは、StatusCheckFailed_System でのみ使用できます。StatusCheckFailed_Instance では使用できません。
今回、改めて動作を確認したので、これで忘れることはありませんね!